Model selection for physiology

Physiological response parameters were assessed using mixed-effects linear models across species and treatments. Model selection was carried out using backward elimination of random-effects followed by fixed-effects using the package lmerTest (version 3.1.3)

Protein

While value ~ species + fpco2 + ftemp + (1 | colony) + species:ftemp was the best-fit model structure identified, we wanted to model both pCO2 and temperature responses by species so moving forward we are using the following model structure:

value ~ species * (fpco2 + ftemp) + (1 | colony)


Figure:

Carbohydrate

While value ~ species + ftemp was the best-fit model structure identified, we wanted to model responses with a random effect of colony so moving forward we are using the following model structure:

value ~ species * (fpco2 + ftemp) + (1 | colony)


Figure:

Lipid

While value ~ species + ftemp + reef + species:ftemp + species:reef was the best-fit model structure identified, we wanted to model both pCO2 and temperature responses by species and with random effect of colony so moving forward we are using the following model structure:

value ~ species * (fpco2 + ftemp) + reef + species:reef + (1 | colony)


Figure:

Density

While value ~ species + fpco2 + ftemp + reef + (1 | colony) + species:fpco2 + species:ftemp + fpco2:ftemp + species:reef + fpco2:reef + ftemp:reef + species:fpco2:ftemp + species:fpco2:reef + species:ftemp:reef + fpco2:ftemp:reef + species:fpco2:ftemp:reef was the best-fit model structure identified, we wanted to model both pCO2 and temperature responses by species and with random effect of colony so moving forward we are using the following model structure:

value ~ species * (fpco2 + ftemp) + reef + species:reef + (1 | colony)


Figure:

Chlorophyll

Since the best-fit model fits our design, we will proceed with the following model structure:

value ~ species + fpco2 + ftemp + reef + (1 | colony) + species:fpco2 + species:ftemp + fpco2:ftemp + species:reef


Figure:

Total Host

Since the best-fit model fits our design, we will proceed with the following model structure:

value ~ species + fpco2 + ftemp + reef + (1 | colony) + species:fpco2 + species:ftemp + species:reef + fpco2:reef + species:fpco2:reef


Figure:

Calcification

This is the same model from Bove et al 2019, just matching aesthetics for this manuscript.

Figure 1


Figure 1. Modeled 95% confidence interval of (A) total host energy reserves (mg cm-2), (B) cell density (106 cells cm-2), and (C) Chlorophyll a (ug cm-2) for S. siderea, P. strigosa, and P. astreoides at T0 (green) or T90 (red/blue), with individual coral fragment physiology denoted by points. Blue denotes 28°C and red denotes 31°C, with pCO2 treatment along the x axis.


Correlation assessments

Here, I am exploring the relationships between each physiology parameter measured above.


Figure 2. Correlation matrix for S. siderea, P. strigosa, and P. astreoides depicting pair-wise comparisons of physiological parameters within each species. Colour and ellipse width denote R2 of each significant comparison, and blank grids represent non-significant pair-wise comparisons (P > 0.05).Each parameter is denoted in blue text along the diagonal of each plot. Correlations with R2 above 0.5 (shown in orange and red in matrix plot) are explored further below.


Siderastrea siderea


Pseudodiploria strigosa


Porites astreoides


Holobiont PCAs

Siderastrea siderea

## 
## Call:
## adonis(formula = value ~ reef + ftemp + fpco2, data = s_df_l,      method = "eu") 
## 
## Permutation: free
## Number of permutations: 999
## 
## Terms added sequentially (first to last)
## 
##            Df SumsOfSqs MeanSqs F.Model      R2 Pr(>F)  
## reef        1       677   677.1  0.4564 0.00082  0.486  
## ftemp       1      2939  2939.3  1.9810 0.00355  0.151  
## fpco2       3     14491  4830.3  3.2556 0.01750  0.024 *
## Residuals 546    810104  1483.7         0.97814         
## Total     551    828211                 1.00000         
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Pseudodiploria strigosa

## 
## Call:
## adonis(formula = value ~ reef + ftemp + fpco2, data = p_df_l,      method = "eu") 
## 
## Permutation: free
## Number of permutations: 999
## 
## Terms added sequentially (first to last)
## 
##            Df SumsOfSqs MeanSqs F.Model      R2 Pr(>F)  
## reef        1     10809 10809.2  3.4558 0.00709  0.065 .
## ftemp       1     18776 18775.5  6.0027 0.01231  0.012 *
## fpco2       3     31998 10666.2  3.4100 0.02098  0.015 *
## Residuals 468   1463839  3127.9         0.95963         
## Total     473   1525422                 1.00000         
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Porites astreoides

## 
## Call:
## adonis(formula = value ~ reef + ftemp + fpco2, data = a_df_l,      method = "eu") 
## 
## Permutation: free
## Number of permutations: 999
## 
## Terms added sequentially (first to last)
## 
##            Df SumsOfSqs MeanSqs F.Model      R2 Pr(>F)  
## reef        1       137   136.6  0.1277 0.00030  0.714  
## ftemp       1      4808  4808.4  4.4961 0.01062  0.036 *
## fpco2       3     11590  3863.2  3.6123 0.02559  0.013 *
## Residuals 408    436336  1069.5         0.96349         
## Total     413    452871                 1.00000         
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Figure 2

Plasticity analyses

This is still being updated at the moment




## R version 3.5.1 (2018-07-02)
## Platform: x86_64-apple-darwin15.6.0 (64-bit)
## Running under: macOS High Sierra 10.13.6
## 
## Matrix products: default
## BLAS: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRlapack.dylib
## 
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
## 
## attached base packages:
## [1] grid      stats     graphics  grDevices utils     datasets  methods  
## [8] base     
## 
## other attached packages:
##  [1] wesanderson_0.3.6  RColorBrewer_1.1-2 gridGraphics_0.5-0
##  [4] corrplot_0.84      Hmisc_4.2-0        Formula_1.2-3     
##  [7] survival_2.44-1.1  magick_2.2         ggpubr_0.2.4      
## [10] magrittr_1.5       vroom_1.2.0        lmerTest_3.1-3    
## [13] lme4_1.1-21        Matrix_1.2-17      kableExtra_1.1.0  
## [16] ggfortify_0.4.7    cowplot_1.0.0      Rmisc_1.5         
## [19] shiny_1.4.0        vegan_2.5-5        lattice_0.20-41   
## [22] permute_0.9-5      forcats_0.4.0      stringr_1.4.0     
## [25] purrr_0.3.3        tibble_2.1.3       tidyverse_1.3.0   
## [28] plotly_4.9.0       openxlsx_4.1.2     tidyr_1.0.0       
## [31] ggbiplot_0.55      scales_1.1.0       plyr_1.8.5        
## [34] dplyr_0.8.3        ggplot2_3.2.1      readr_1.3.1       
## [37] knitr_1.25        
## 
## loaded via a namespace (and not attached):
##  [1] minqa_1.2.4         colorspace_1.4-1    ggsignif_0.6.0     
##  [4] ellipsis_0.3.0      htmlTable_1.13.1    base64enc_0.1-3    
##  [7] fs_1.3.1            rstudioapi_0.10     farver_2.0.1       
## [10] ggrepel_0.8.1       bit64_0.9-7         fansi_0.4.1        
## [13] lubridate_1.7.4     xml2_1.2.2          splines_3.5.1      
## [16] jsonlite_1.6        nloptr_1.2.1        broom_0.5.2        
## [19] cluster_2.1.0       dbplyr_1.4.2        compiler_3.5.1     
## [22] httr_1.4.1          backports_1.1.5     assertthat_0.2.1   
## [25] fastmap_1.0.1       lazyeval_0.2.2      cli_2.0.1          
## [28] later_1.0.0         acepack_1.4.1       htmltools_0.4.0    
## [31] tools_3.5.1         gtable_0.3.0        glue_1.3.1         
## [34] Rcpp_1.0.3          cellranger_1.1.0    vctrs_0.2.4        
## [37] nlme_3.1-140        xfun_0.8            rvest_0.3.5        
## [40] mime_0.7            lifecycle_0.2.0     MASS_7.3-51.4      
## [43] hms_0.5.3           promises_1.1.0      parallel_3.5.1     
## [46] yaml_2.2.0          gridExtra_2.3       rpart_4.1-15       
## [49] latticeExtra_0.6-28 stringi_1.4.5       checkmate_1.9.4    
## [52] boot_1.3-23         zip_2.0.3           rlang_0.4.5        
## [55] pkgconfig_2.0.3     evaluate_0.14       labeling_0.3       
## [58] htmlwidgets_1.3     bit_1.1-14          tidyselect_1.0.0   
## [61] R6_2.4.1            generics_0.0.2      DBI_1.0.0          
## [64] pillar_1.4.3        haven_2.2.0         foreign_0.8-71     
## [67] withr_2.1.2         mgcv_1.8-28         nnet_7.3-12        
## [70] modelr_0.1.5        crayon_1.3.4        rmarkdown_1.16     
## [73] readxl_1.3.1        data.table_1.12.2   reprex_0.3.0       
## [76] digest_0.6.23       webshot_0.5.1       xtable_1.8-4       
## [79] httpuv_1.5.2        numDeriv_2016.8-1.1 munsell_0.5.0      
## [82] viridisLite_0.3.0